Інформація про новину
  • Переглядів: 3935
  • Дата: 4-04-2021, 23:54
4-04-2021, 23:54

6. Кодування графічних даних

Категорія: Інформатика





Попередня сторінка:  5. Вимірювання інформації
Наступна сторінка:   7. Апаратне забезпечення

6.1.

РАСТРОВЕ ПОДАННЯ

Двійковому кодуванню піддається і графічна інформація. Розглянемо, як це відбувається.

Щоб зберегти у двійковій формі графічну інформацію, застосовують два подання — растрове і векторне. Як ми бачимо з рисунка 6.1, при масштабуванні растрового зображення його якість погіршується, а при масштабуванні векторного зображення якість не змінюється.

Растрове подання застосовується для зберігання фотографій, творів живопису, малюнків та подібних зображень.

Для створення растрового подання зображення розбивається на маленькі елементи. Така процедура називається растеризацією, звідси й назва подання.

Елементи, на які розбивається зображення, називаються пікселями. Отже, піксель — це найменша одиниця цифрового зображення у растровій

графіці. Він являє собою неподільний об'єкт прямокутної (зазвичай квадратної) форми, що має певний колір.

Растрове зображення — це зображення, що кодується як множина пікселів.

Растеризацію застосовували до появи комп’ютерів. Зокрема, для відтворення фотографій у книжках та газетах негатив знімка перефото-графовували через растр (пластину з нанесеними лініями). У результаті отримували зображення, утворене з точок. З нього робили форму для друкарської машини. У поліграфії застосовуються різні види растрів. На рис. 6.2 представлено збільшену копію растрованого зображення ока, що використовувалося для друку в газеті, та зображення комахи, розбите на пікселі з використанням комп’ютера.

У комп’ютерній техніці застосовують лише прямокутні пікселі та прямокутний растр, у якого елементи розташовано у вигляді прямокутної матриці (рядками та стовпцями).

Колір пікселя для зберігання у комп’ютері кодується з допомогою двійкового коду з певною довжиною. Як і в разі кодування тексту, чим більшу довжину (кількість розрядів) має такий код, тим більше кольорів пікселя можна закодувати з його допомогою.

У чорно-білому зображенні, що не містить відтінків сірого, використовуються лише два кольори, а отже, для кодування кольору його пікселів достатньо одного розряду (0 — білий колір, 1 — чорний колір).

Двійкову послідовність, що міститиме дані зображення, можна побудувати, замінивши білі пікселі нулями, а чорні — одиницями, як показано на наступному прикладі. Ширина рисунка тут становить 8 пікселів, а отже, кожний рядок таблиці буде складатися із 8 бітів, або одного байта. Все зображення матиме 8 таких рядків і для його зберігання знадобиться щонайменше 8 байтів.

А що ж робити, коли рисунок кольоровий? У цьому випадку для кодування кольору пікселя одним бітом уже не обійтися. Наприклад, для кодування одного з чотирьох варіантів кольорів потрібно вже застосувати 2 розряди двійкового коду. Отже, для зберігання даних про один піксель треба виділити 2 біти. Позначимо білий колір кодом 00, червоний — 01, зелений — 10, а жовтий — 11. Отримаємо таку таблицю.

У кольорових зображеннях для кодування кольору пікселя зазвичай застосовують 4, 8 або 24 розряди, що відповідає 16, 256 і 16 777 216 кольорам. Від цієї кількості розрядів залежить якість зображення.

Окрім кількості розрядів для зберігання кольору потрібно задати, який колір якому числу відповідатиме, тобто, як саме дані про колір будуть записані у цифровому вигляді. Це визначається колірною моделлю.

Колірна модель — система кодування кольорів, яка використовується для зберігання та відтворення зображення.

Найпоширеніших колірних моделей три — RGB, CMYK та HSB. Назва моделі RGB утворена першими літерами кольорів Red (червоний), Green (зелений), Blue (синій). Колір у цій моделі розглядається як результат змішування променів світла трьох кольорів. Кожна складова кодується цілим числом від 0 до 255, а отже, код кольору — це трійка чисел (R, G, B). Чорний колір має код (0, 0, 0) — тут відсутні будь-які світлові промені. Білий колір має код (255, 255, 255). Відповідно у червоного кольору буде присутня складова червоного кольору, а інші відсутні, аналогічно утворено коди зеленого та синього кольорів.

На рисунку нижче також наведено коди кольорів цієї палітри, утворені при попарному змішуванні червоного, зеленого та синього променів.

Неважко здогадатися, що загальна кількість кольорів палітри RGB дорівнює 256 • 256 • 256 = 16777216, що є більш ніж достатнім для сприйняття людиною. Оскільки 256 = 28, кожна зі складових кольору містить 8 бітів інформації або 1 байт. Отже, для кодування певного кольору потрібно 24 біти або 3 байти. Це значення називають глибиною кольору.

Глибина кольору — це кількість бітів, що використовується для кодування кольору одного пікселя зображення.

24-бітне кодування називають True Color, що перекладається, як реальний колір, тобто колір, наближений до кольорів реальної дійсності.

Задача 1. Зображення, закодоване в режимі True Color, має розміри 100x150 пікселів. Визначити обсяг його даних.

Розв’язання

Для обчислення обсягу даних зображення необхідно скористатися формулою:

де k — кількість пікселів, b — глибина кольору. Визначимо кількість пікселів зображення: 100 • 150 = 15000 (пікселів).

Оскільки зображення закодовано в режимі True Color, вага одного пікселя = 3 (байти).

Відповідно обсяг даних зображення дорівнює:

15000 • 3 = 45000 (байтів).

Відповідь: 45000 байтів.

Задача 2. На рисунку представлено зображення. Необхідно визначити обсяг його даних у байтах, якщо в ньому застосовуються тільки кольори, присутні на зображенні.

Розв’язання

Визначимо загальну кількість пікселів:

16 • 16 = 256 пікселів.

Визначимо глибину кольору — для цього підрахуємо кількість кольорів, у зображенні. Це значення дорівнює 7.

7 < 8 = 23, отже, для кодування одного кольору необхідно 3 біти — це значення і є глибиною кольору.

Знаходимо обсяг даних зображення:

V = k • b , 256 • 3 = 768 бітів = 768 : 8 = 96 байтів. Відповідь: 96 байтів.

Звичайно, в результаті дискретизації погіршується якість зображення. Для зменшення втрат якості зображення при дискретизації слід використовувати якомога менший розмір пікселя, а саме: збільшувати роздільну здатність зображення.

Роздільна здатність — це кількість пікселів на одиницю довжини.

Як правило, роздільна здатність вимірюється в пікселях на дюйм. 1 дюйм = 2,54 см.

Для роздільної здатності використовується англійське позначення ppi (pixel per inch, що перекладається як «піксель на дюйм»). Так, роздільна здатність 254 ppi означає, що в одному дюймі буде розташовано 254 пікселі. На рисунку представлені зображення з різними значеннями роздільної

здатності. Звичайно, чим більше роздільна здатність, тим кращою є якість зображення, але й обсяг файлу, що містить це зображення, буде більшим.

Задача 3. Закодоване зображення має розміри 800x600 пікселів і роздільну здатність — 72 ppi. Який розмір буде в зображення, надрукованого на принтері?

Розв’язання

Для визначення ширини зображення необхідно його значення в пікселях помножити на довжину одного дюйма в сантиметрах та розділити на роздільну здатність зображення:

800 ■ 2,54 : 72 = 28,2 (см). Аналогічно знаходимо висоту зображення: 600 ■ 2,54 : 72 = 21,2 (см). Відповідь: 28,2 см x 21,2 см.

6.2.

ВЕКТОРНЕ ПОДАННЯ

Крім растрового, подання використовують векторне подання. Його застосовують для зберігання контурних малюнків, креслень та інших структурованих рисунків, що складаються з контурних об’єктів, які можна описати математично (кіл, дуг, прямокутників, ліній тощо).

Векторне зображення — це зображення, побудоване з елементарних геометричних фігур, параметри яких (розміри, координати вершин, кути нахилу, колір контуру тощо) зберігаються у вигляді чисел.

В комп’ютері зберігають інформацію про тип об’єкта і дані, необхідні для його побудови. Для кола — це радіус або діаметр та координати центра, для прямокутника — координати протилежних вершин. Неважко здогадатися, що растеризація при цьому не застосовується.

Відповідно для кожної фігури зберігаються:

• розміри та координати зображення;

• колір та стиль контуру;

• колір та стиль заливки для замкнених фігур.

Отже, векторне подання має ряд переваг порівняно з растровим поданням:

• при кодуванні не втрачається інформація;

• при зміні розміру не відбувається спотворення зображення;

• файл має невеликий обсяг, адже він залежить не від розмірів зображення, а від кількості елементів у ньому;

• це подання є зручним для зберігання креслень, графіків, схем, карт тощо.

Звичайно, недоліком є те, що це подання абсолютно не придатне для роботи з фотографіями.

6.3.

ГРАФІЧНІ ФОРМАТИ

Для зберігання графічної інформації використовують як векторні, так і растрові формати. Розглянемо найпоширеніші формати графічних файлів.

Bitmap застосовують для зберігання растрових зображень без стиснення, з кодуванням інформації про кожен піксель.

Graphics Interchange Format призначений для стиснення растрових зображень, у яких міститься багато однорідних заливок (для логотипів, написів, схем). Основне обмеження цього формату полягає в тому, що кольорове зображення може бути записане тільки в режимі 256 кольорів.

Joint Photographic Experts Group формат розроблений для фотографій реалістичного кольору з використанням великого стиснення. Він дозволяє гнучко варіювати співвідношення рівня стиснення та якості зображення.

Portable Network Graphics використовують для зображень, які розміщують в Інтернеті. Формат задовольняє основну вимогу Вебу — забезпечення однакового вигляду зображення незалежно від використовуваного браузера та монітора. Колір зображення в цьому форматі відтворюватиметься однаково на будь-якому комп’ютері.

Tagged Image File Format на сьогодні є одним із найпоширеніших і найнадійніших растрових форматів. Його підтримують майже всі програми, пов’язані з графікою. Це найкращий вибір для зберігання сканованих малюнків, а також для імпортування растрової графіки у векторні редактори. Scalable Vector Scalable відображає векторні зображення, призначені для вебсторінок в Інтернеті.

ВПРАВА 6.1

Завдання. Виконайте завдання у файлі Вправа_6_1.docx. Визначте кольори за їхніми RGB-кодами.

ВПРАВА 6.2

Завдання. Виконайте завдання у файлі Вправа_6_2.docx. Створіть зображення за їхніми двійковими кодами.

Контрольні запитання та завдання

1. Які подання використовують для кодування графіки?

2. Що таке піксель?

3. Які складові має колірна модель RGB?

4*. Що таке True Color?

5. Що таке глибина кольору? Як змінюється якість зображення при збільшенні значення глибини кольору?

6. Що таке роздільна здатність? Як змінюється якість зображення при збільшенні значення роздільної здатності?

7. Які графічні формати ви знаєте? Поясніть їхнє призначення.

Питання для роздумів

1*. Що необхідно знати, щоб знайти ширину та висоту зображення в сантиметрах, якщо відомі його ширина та висота у пікселях?

2*. Як ви думаєте, чому в моделі RGB яскравість кольору кодується в діапазоні від 0 до 255?

Завдання для досліджень

1*. Знайдіть інформацію про історію походження та використання такої одиниці вимірювання, як дюйм.

2*. Дізнайтеся, що таке колірна модель CMYK.

 

 

Це матеріал з підручника Інформатика 8 клас Казанцева, Стеценко (2021)

 




Попередня сторінка:  5. Вимірювання інформації
Наступна сторінка:   7. Апаратне забезпечення



^